WPS Office.apk(点击下载) / bnw.java


package defpackage;

/* renamed from: bnw  reason: default package */
public class bnw {
    static final /* synthetic */ boolean $assertionsDisabled = (!bnw.class.desiredAssertionStatus());

    private static double bt(double d) throws bif {
        if (!$assertionsDisabled && d < 0.0d) {
            throw new AssertionError();
        } else if (d == 0.0d) {
            return 0.0d;
        } else {
            return x(0.5d, d * d);
        }
    }

    private static double bu(double d) {
        double d2;
        double[] dArr = {-1.716185138865495d, 24.76565080557592d, -379.80425647094563d, 629.3311553128184d, 866.9662027904133d, -31451.272968848367d, -36144.413418691176d, 66456.14382024054d};
        double[] dArr2 = {-30.840230011973897d, 315.35062697960416d, -1015.1563674902192d, -3107.771671572311d, 22538.11842098015d, 4755.846277527881d, -134659.9598649693d, -115132.25967555349d};
        double[] dArr3 = {-0.001910444077728d, 8.4171387781295E-4d, -5.952379913043012E-4d, 7.936507935003503E-4d, -0.0027777777777776816d, 0.08333333333333333d, 0.0057083835261d};
        if (d <= 1.0d) {
            d2 = 1.0d + d;
        } else if (d <= 12.0d) {
            d2 = (d % 1.0d) + 1.0d;
        } else {
            double d3 = d * d;
            double d4 = dArr3[6];
            for (int i = 0; i < 6; i++) {
                d4 = (d4 / d3) + dArr3[i];
            }
            return ((d4 / d) - d) + 0.9189385332046728d + ((d - 0.5d) * Math.log(d));
        }
        double d5 = d2 - 1.0d;
        double d6 = 0.0d;
        double d7 = 1.0d;
        for (int i2 = 0; i2 < 8; i2++) {
            d6 = (d6 + dArr[i2]) * d5;
            d7 = (d7 * d5) + dArr2[i2];
        }
        double d8 = (d6 / d7) + 1.0d;
        return d <= 1.0d ? d8 / d : d <= 12.0d ? d8 * d : d8;
    }

    public static double w(double d, double d2) throws bif {
        return bt(d2) - bt(d);
    }

    private static double x(double d, double d2) throws bif {
        double d3;
        double d4;
        if (d2 < 0.0d) {
            throw bif.byD;
        } else if (d2 == 0.0d) {
            return 0.0d;
        } else {
            if (d2 > 1.0E35d) {
                throw bif.byD;
            }
            double exp = Math.exp(0.5d * Math.log(d2));
            if (d2 < 1.5d) {
                double d5 = 0.5d;
                double d6 = 2.0d;
                d3 = 2.0d;
                for (int i = 1; i <= 100; i++) {
                    d5 += 1.0d;
                    d6 = (d6 * d2) / d5;
                    d3 += d6;
                    if (Math.abs(d6) < Math.abs(d3) * 1.0E-16d) {
                        return ((d3 * Math.exp(-d2)) * exp) / bu(0.5d);
                    }
                }
            } else {
                int i2 = 1;
                double d7 = 0.0d;
                double d8 = 1.0d;
                double d9 = d2;
                double d10 = 1.0d;
                d3 = 1.0d / d2;
                while (i2 <= 100) {
                    double d11 = d8 + (d7 * (((double) i2) - 0.5d));
                    double d12 = d9 + (d10 * (((double) i2) - 0.5d));
                    double d13 = (d2 * d11) + (d8 * ((double) i2));
                    double d14 = (d2 * d12) + (d9 * ((double) i2));
                    if (d14 != 0.0d) {
                        d4 = d13 / d14;
                        if (Math.abs((d4 - d3) / d4) < 1.0E-16d) {
                            return 1.0d - (((d4 * Math.exp(-d2)) * exp) / bu(0.5d));
                        }
                    } else {
                        d4 = d3;
                    }
                    i2++;
                    d3 = d4;
                    d9 = d14;
                    d8 = d13;
                    d10 = d12;
                    d7 = d11;
                }
            }
            return 1.0d - (((d3 * Math.exp(-d2)) * exp) / bu(0.5d));
        }
    }
}